package com.thqmcp.server.model;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

/**
 * MCP (Model Context Protocol) 消息基础类
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class McpMessage {
    
    /**
     * JSON-RPC版本
     */
    @JsonProperty("jsonrpc")
    private String jsonrpc = "2.0";
    
    /**
     * 消息类型 (request, response, notification)
     */
    private String type;
    
    /**
     * 请求方法名
     */
    private String method;
    
    /**
     * 请求参数
     */
    private Object params;
    
    /**
     * 请求ID
     */
    private String id;
    
    /**
     * 响应结果
     */
    private Object result;
    
    /**
     * 错误信息
     */
    private McpError error;
} 